
import java.util.*;

/**
 * <p>
 * Botao instalado em um painel interno ao Elevador e representante a parada emergencial
 * </p>
 */
public class BotaoDeEmergencia  extends Botao {

	  ///////////////////////////////////////
	  // attributes


	/**
	 * <p>
	 * Representa o Elevador em que se encontra instalado o BotaoDeEmergencia.
	 * </p>
	 */
	    protected Elevador elevador; 


	  ///////////////////////////////////////
	  // operations


	/**
	 * <p>
	 * Construtor de uma instancia de BotaoDeEmergencia.
	 * </p>
	 * 
	 * @param andar - andar representado pelo BotaoDeEmergencia.
	 * 
	 * @param elevador - Elevador onde se encontra instalado o BotaoDeSelecao.
	 * 
	 * @return um BotaoDeEmergencia instalado dentro do Elevador.
	 */
	    public  BotaoDeEmergencia(Elevador elevador) {        
	        super();
	        this.elevador = elevador;
	    } // end BotaoDeSelecao        

	/**
	 * <p>
	 * Informa ao Elevador o andar para o qual o Passageiro prentende ir e
	 * solicita o servico.
	 * </p>
	 */
	    public void solicitarAndar() {        
	        armar();
	        
	        elevador.registrarBotaoDeEmergenciaArmado();

	        registrarElevadorNoAndar();
	        
	    } // end solicitarAndar        

	/**
	 * <p>
	 * Registra que o pedido feito via o acionamento do Botao foi atendido.
	 * </p>
	 */
	    public void registrarElevadorNoAndar() {        
	        desarmar();
	        elevador.registrarBotaoDeEmergenciaDesarmado();
	    } // end registrarElevadorNoAndar        

	 } // end BotaoDeSelecao
